package com.finger.gulimall.ware.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.finger.gulimall.ware.entity.WareSkuEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

/**
 * 商品库存
 *
 * @author finger
 * @email 909128695@qq.com
 * @date 2022-03-16 18:27:01
 */
@Mapper
public interface WareSkuDao extends BaseMapper<WareSkuEntity> {

    // 根据skuid查出该商品的库存数量
    Long queryHasStock(@Param("skuId") Long skuid);

    /**
     * 根据商品id、库存id锁定库存数量
     * @param skuId 商品id
     * @param wareId 库存id
     * @param num 锁定数量
     * @return 受影响的行数
     */
    Long lockStock(@Param("skuId") Long skuId, @Param("wareId") Long wareId, @Param("num") Integer num, @Param("num2") Integer num2);


	void unLockStock(@Param("skuId") Long skuId, @Param("wareId") Long wareId, @Param("skuNum") Integer skuNum);

}
